| 1: | a__from(X) | → cons(mark(X),from(s(X))) | |
| 2: | a__after(0,XS) | → mark(XS) | |
| 3: | a__after(s(N),cons(X,XS)) | → a__after(mark(N),mark(XS)) | |
| 4: | mark(from(X)) | → a__from(mark(X)) | |
| 5: | mark(after(X1,X2)) | → a__after(mark(X1),mark(X2)) | |
| 6: | mark(cons(X1,X2)) | → cons(mark(X1),X2) | |
| 7: | mark(s(X)) | → s(mark(X)) | |
| 8: | mark(0) | → 0 | |
| 9: | a__from(X) | → from(X) | |
| 10: | a__after(X1,X2) | → after(X1,X2) | |
| 11: | A__FROM(X) | → MARK(X) | |
| 12: | A__AFTER(0,XS) | → MARK(XS) | |
| 13: | A__AFTER(s(N),cons(X,XS)) | → A__AFTER(mark(N),mark(XS)) | |
| 14: | A__AFTER(s(N),cons(X,XS)) | → MARK(N) | |
| 15: | A__AFTER(s(N),cons(X,XS)) | → MARK(XS) | |
| 16: | MARK(from(X)) | → A__FROM(mark(X)) | |
| 17: | MARK(from(X)) | → MARK(X) | |
| 18: | MARK(after(X1,X2)) | → A__AFTER(mark(X1),mark(X2)) | |
| 19: | MARK(after(X1,X2)) | → MARK(X1) | |
| 20: | MARK(after(X1,X2)) | → MARK(X2) | |
| 21: | MARK(cons(X1,X2)) | → MARK(X1) | |
| 22: | MARK(s(X)) | → MARK(X) | |